System and method for providing advertisement data to a mobile computing device

ABSTRACT

A mobile computing device includes a processor, a display coupled to the processor, a memory coupled to the processor and configured to store user-specific data, and a location-determining circuit configured to determine the location of the portable electronic device. The processor is configured to provide advertisement data on the display based upon the location of the portable electronic device and the user-specific data.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a Continuation of U.S. application Ser. No. 11/901,272, filed Sep. 14, 2007, entitled “SYSTEM AND METHOD FOR PROVIDING ADVERTISEMENT DATA TO A MOBILE COMPUTING DEVICE,” which is incorporated herein by reference in its entirety.

BACKGROUND

The present invention relates generally to the field of mobile computing devices, and more specifically to systems and methods for providing advertisement data to a mobile computing device.

Mobile devices may be used to provide location-based advertisements to users of mobile devices. As a user travels, advertisements may be displayed on a mobile device the user is carrying based upon the geographic location of the mobile device. For example, if a user walks past a restaurant, an advertisement (e.g., coupon, discount, general advertisement, etc.) may be displayed on the user's mobile device.

However, with the increasing usage of mobile devices and location-based advertisements, users may receive numerous advertisements, where many may be totally irrelevant to the user, and where it may be difficult to identify relevant or useful advertisements because of the high number of advertisements being received.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a front view of a mobile computing device according to an exemplary embodiment.

FIG. 2 is a back view of the mobile computing device of FIG. 1 according to an exemplary embodiment.

FIG. 3 is a side view of the mobile computing device of FIG. 1 according to an exemplary embodiment.

FIG. 4 is a block diagram of the mobile computing device of FIG. 1 according to an exemplary embodiment.

FIG. 5 is a block diagram showing a memory of the mobile computing device of FIG. 1 according to an exemplary embodiment.

FIG. 6 is a schematic representation of the mobile computing device of FIG. 1 in communication with a number of advertisement services according to an exemplary embodiment.

FIG. 7 is a flowchart illustrating a method of providing advertisement data according to an exemplary embodiment.

FIG. 8 is a flowchart illustrating a method of providing advertisement data according to another exemplary embodiment.

FIGS. 9-11 are schematic representations of a display of the mobile computing device of FIG. 1 according to various exemplary embodiments.

DETAILED DESCRIPTION

Disclosed is a system and method for providing location-based advertisements using a mobile computing device. In some embodiments, the advertisement data is based upon both the location of the mobile computing device and user-specific data stored on or retrievable by the mobile computing device.

Referring to FIGS. 1-3, a mobile computing device 10 is shown. The teachings herein can be applied to device 10 or to other electronic devices (e.g., a desktop computer), mobile computing devices (e.g., a laptop computer) or handheld computing devices, such as a personal digital assistant (PDA), smartphone, mobile telephone, personal navigation device, etc. According to one embodiment, device 10 is a smartphone, which is a combination mobile telephone and handheld computer having PDA functionality. PDA functionality can comprise one or more of personal information management (e.g., including personal data applications such as email, calendar, phone, text messaging, etc.), database functions, word processing, spreadsheets, voice memo recording, Global Positioning System (GPS) functionality, etc. Device 10 is configured to synchronize personal information from these applications with a computer (e.g., a desktop, laptop, server, etc.). Device 10 is further configured to receive and operate additional applications provided to device 10 after manufacture, e.g., via wired or wireless download, SecureDigital card, etc.

As shown in FIGS. 1-3, device 10 includes a housing 12 and a front side 14 and a back side 16. Device 10 further comprises a display 18 and a user input device 20 (e.g., a QWERTY keyboard, buttons, touch screen, speech recognition engine, etc.). Display 18 can comprise a touch screen display in order to provide user input to a processor 40 (see FIG. 4) to control functions, such as to select options displayed on display 18, enter text input to device 10, or enter other types of input. Display 18 also provides images (see, e.g., FIG. 6) that are displayed and may be viewed by users of device 10. User input device 20 can provide similar inputs as those of touch screen display 18. Device 10 can further comprise a speaker 26, and a stylus 30 to assist the user in making selections on display 18.

According to an exemplary embodiment, housing 12 is configured to hold a screen such as display 18 in a fixed relationship above a user input device such as user input device 20 in a substantially parallel or same plane. This fixed relationship excludes a hinged or movable relationship between the screen and the user input device (e.g., a plurality of keys) in the fixed embodiment. Device 10 may be a handheld computer, which is a computer small enough to be carried in a hand of a user, comprising such devices as typical mobile telephones and personal digital assistants, but excluding typical laptop computers and tablet PCs.

In various embodiments, housing 12 could be any size, shape, and dimension. In some embodiments, housing 12 has a width 13 of no more than about 200 mm or, alternatively, no more than about 100 mm. According to some of these embodiments, housing 12 has a width 13 of no more than about 85 mm or, alternatively, no more than about 65 mm. According to some embodiments, housing 12 has a width 13 of at least about 30 mm or, alternatively, at least about 50 mm. According to some of these embodiments, housing 12 has a width 13 of at least about 55 mm.

In some embodiments, housing 12 has a length 15 of no more than about 200 mm or, alternatively, no more than about 150 mm. According to some of these embodiments, housing 12 has a length 15 of no more than about 135 mm or, alternatively, no more than about 125 mm. According to some embodiments, housing 12 has a length 15 of at least about 70 mm or, alternatively, at least about 100 mm. According to some of these embodiments, housing 12 has a length 15 of at least about 100 mm.

In some embodiments, housing 12 has a thickness 17 of no more than about 150 mm or, alternatively, no more than about SO mm. According to some of these embodiments, housing 12 has a thickness 17 of no more than about 30 mm or, alternatively, no more than about 25 mm. According to some embodiments, housing 12 has a thickness 17 of at least about 10 mm or, alternatively, at least about 15 mm. According to some of these embodiments, housing 12 has a thickness 17 of at least about 50 mm.

In some embodiments, housing 12 has a volume of up to about 2500 cubic centimeters or, alternatively, up to about 1500 cubic centimeters. In some alternative embodiments, housing 12 has a volume of up to about 1000 cubic centimeters or, alternatively, up to about 600 cubic centimeters.

Referring now to FIG. 4, device 10 comprises a processing circuit 46 comprising a processor 40. Processor 40 can comprise one or more microprocessors, microcontrollers, and other analog and/or digital circuit components configured to perform the functions described herein. Processor 40 may comprise one or more memories (e.g., random access memory, read only memory, flash, etc.) configured to store software applications provided during manufacture or subsequent to manufacture by the user or by a distributor of device 10. In one embodiment, processor 40 can comprise a first applications microprocessor configured to run a variety of personal information management applications, such as email, a calendar, contacts, etc., and a second, radio processor on a separate chip or as part of a dual-core chip with the application processor. The radio processor is configured to operate telephony functionality. Device 10 can be configured for cellular radio telephone communication, such as Code Division Multiple Access (CDMA), Global System for Mobile Communications (GSM), Third Generation (3G) systems such as Wide-Band CDMA (WCDMA), or other cellular radio telephone technologies. Device 10 can further be configured for data communication functionality, for example, via GSM with General Packet Radio Service (GPRS) systems (GSM/GPRS), CDMA/1×RTT systems, Enhanced Data Rates for Global Evolution (EDGE) systems, Evolution Data Only or Evolution Data Optimized (EV-DO), and/or other data communication technologies.

Device 10 comprises a receiver 38 which comprises analog and/or digital electrical components configured to receive and transmit wireless signals via antenna 22 to provide cellular telephone and/or data communications with a fixed wireless access point, such as a cellular telephone tower, in conjunction with a network carrier, such as, Verizon Wireless, Sprint, etc. Device 10 can further comprise circuitry to provide communication over a local area network, such as Ethernet or according to an IEEE 802.11x standard or a personal area network, such as a Bluetooth or infrared communication technology.

Device 10 further comprises a microphone 36 (see FIG. 2) configured to receive audio signals, such as voice signals, from a user or other person in the vicinity of device 10, typically by way of spoken words. Alternatively or in addition, processor 40 can further be configured to provide video conferencing capabilities by displaying on display 18 video from a remote participant to a video conference, by providing a video camera on device 10 for providing images to the remote participant, by providing text messaging, two-way audio streaming in full- and/or half-duplex mode, etc.

Device 10 further comprises a location determining application, shown in FIG. 3 as GPS application 44. GPS application 44 can communicate with and provide the location of device 10 at any given time. Device 10 may employ one or more location determination techniques including, for example, Global Positioning System (GPS) techniques, Cell Global Identity (CGI) techniques, CGI including timing advance (TA) techniques, Enhanced Forward Link Trilateration (EFLT) techniques, Time Difference of Arrival (TDOA) techniques, Angle of Arrival (AOA) techniques, Advanced Forward Link Trilateration (AFTL) techniques, Observed Time Difference of Arrival (OTDOA), Enhanced Observed Time Difference (EOTD) techniques, Assisted GPS (AGPS) techniques, hybrid techniques (e.g., GPS/CGI, AGPS/CGI, GPS/AFTL or AGPS/AFTL for CDMA networks, GPS/EOTD or AGPS/EOTD for GSM/GPRS networks, GPS/OTDOA or AGPS/OTDOA for UMTS networks), and so forth.

Device 10 may be arranged to operate in one or more location determination modes including, for example, a standalone mode, a mobile station (MS) assisted mode, and/or an MS-based mode. In a standalone mode, such as a standalone GPS mode, device 10 may be arranged to autonomously determine its location without real-time network interaction or support. When operating in an MS-assisted mode or an MS-based mode, however, device 10 may be arranged to communicate over a radio access network (e.g., UMTS radio access network) with a location determination entity such as a location proxy server (LPS) and/or a mobile positioning center (MPC).

Device 10 further comprises a memory 42 coupled to or as part of processor 40. Memory 42 may store a variety of information, data, applications, files, etc. that may be used or accessed using device 10. According to an exemplary embodiment as shown in FIG. 5, memory 42 may store user-specific data 48 (e.g., user profile data, user preference data, user-related data, personal information management data, etc.). User-specific data may include a number of different types of data related to a user of device 10. For example, as shown in FIG. 5, user-specific data 48 may include calendar data 50, contacts data 52, messaging data 54, personal preferences or profile data 56, and other user-specific data 58.

According to an exemplary embodiment, calendar data 50 may include various data related to an electronic calendar application capable of being run on device 10. For example, calendar data 50 may include data regarding various appointments such as location data (e.g., an individual's residence, a commercial establishment, an address or other geographic indicator such as a city, state, etc., a conference room number, and so on), time/date data (e.g., a date and/or time for a specific appointment, data regarding a recurring appointment, etc.), attendee data, and other data related to an appoint or meeting. According to an exemplary embodiment, calendar data 50 may include, for example, a name of an individual or commercial establishment that may be used to determine an associated geographic location (e.g., by looking up the name in a contacts application). According to various other exemplary embodiments, calendar data 50 may include a variety of other types of data, information, and so on.

According to an exemplary embodiment, contacts data 52 may include information regarding specific contacts, such as names, addresses, phone numbers, email addresses, fax numbers, and contact-specific notes (e.g., notes about the specific contact such as a birthday, anniversary, etc.). Processor 40 may utilize contacts data 52 to look-up various types of data (e.g., to determine an address when only a name is known, etc.). According to various other exemplary embodiments, contacts data 52 may include a variety of other types of data, information, and so on.

According to an exemplary embodiment, messaging data 54 may include information related to a variety of messaging applications including email, text messaging, short message service (SMS), and so on. For example, messaging data may include the content of an email, a text message, etc., email addresses, text messaging addresses, etc., and so on. According to various other exemplary embodiments, messaging data 54 may include a variety of other types of data, information, and so on.

According to an exemplary embodiment, personal preference or personal profile data 56 may include data that is specific to a user. Personal preference data 56 may be data that a user may customize by providing input to device 10. For example, device 10 may permit a user to set up a profile (e.g., by filling out an electronic form, answering a set of predetermined questions, providing key words, etc.) for himself or herself that identifies certain likes, dislikes, etc., such as favorite foods, favorite destinations, favorite sports, and so on (including least favorite preferences). As discussed in more detail below, this data may be accessed by processor 40 to filter advertisement data that is being directed to a user from various advertisement services, such that the relevancy of the advertisement data provided to the user, and therefore the usefulness of the advertisement data to the user, is improved. According to various alternative exemplary embodiments, personal preference data 56 may include a variety of other types of data, information, and so on, in addition to that disclosed herein. Furthermore, processor 40 may permit a user to update, customize, reconfigure, etc. personal preference data 56.

According to an exemplary embodiment, personal preference data 56 may further include parameters that define the number, type, frequency, etc. of the advertisement data that is delivered to device 10. For example, a user may indicate that they do not wish to receive any advertisement data (e.g., for a certain period of time), or the user may wish to limit the amount of advertisement data received (e.g., 2 ads per hour, 5 ads per day, etc.) or the type of advertisement data received (e.g., a user may indicate that they do not wish to receive pop-up ads or other types of ads). In a further exemplary embodiment, processor 40 may store any undelivered advertisement data that may later be accessed by a user (e.g., processor 40 may store all pop-up ads in a designated file or application that a user may access at their convenience). Other personal preference data 56 may be provided according to various other exemplary embodiments in order to further define and/or restrict the delivery of advertisement data to device 10.

According to various other exemplary embodiments, device 10 may utilize other data 58 as user-specific data 48 in accordance with the various embodiments disclosed herein. It should be understood that the various types of user-specific data 48 described herein are provided for purposes of illustration, and not limitation, and user-specific data 48 may include other data 58 not specifically addressed herein depending on the specific embodiment (e.g., data related to web-sites the user has visited using device 10, bookmarks or favorites for web-sites, data downloaded from a user's social networking account on a web-site (e.g., a MySpace or Facebook account), data related to audio and/or video clips (e.g., songs, videos, etc.), to-do lists, memo applications, gaming applications, etc.). The present disclosure is intended to be applicable to all such embodiments.

Referring to FIG. 6, device 10 is shown in communication with a number of advertisement services 60, 62, 64 according to an exemplary embodiment. Services 60, 62, 64 are located remotely from device 10 and are capable of wired and/or wireless communications with device 10. According to an exemplary embodiment, services 60, 62, 64 are configured to provide advertisement data to various types of computing devices, including device 10. Device 10 may communicate with services 60, 62, 64 while the location of device 10 changes (e.g., while a user of device 10 is walking, driving, traveling, etc.) such that the advertisement data may be provided based on the current location of device 10.

According to various exemplary embodiments, the advertisement data may include a variety of information and be provided in a variety of ways. For example, advertisement data may be provided to a user of device 10 in the form of a visual image provided on display 18. For example, an icon (see, e.g., FIG. 9) may be displayed on device 10 and may be selected by a user to provide an enlarged advertisement such as an electronic coupon, etc. (see, e.g., FIG. 10). Alternatively, rather than providing a visual display, device 10 may provide an audible message (e.g., a recording of an advertisement, etc.). Furthermore, the advertisement data may be provided on display 18 and superimposed over another image, such as the current image the user is viewing, a geographic map indicating the location of the establishment(s) the advertisement data is associated with (see FIG. 11), and so on. According to various other exemplary embodiments, other types of advertisement data may be provided to device 10 (e.g., text, graphics, audio data, video data, etc.).

Referring to FIG. 7, a flow chart illustrating an exemplary method of providing advertisement data to a device such as device 10 is shown. Device 10 first determines its location using GPS application 44 or another suitable location-determining application (step 70). Processor 40 then accesses user-specific data 48 (step 72). Accessing user-specific data 48 may include a variety of actions, including accessing any of calendar data 50, contacts data 52, messaging data 54, personal preference data 56, and/or other user-specific data 58. Processor 40 communicates with advertisement services 60, 62, 64 and, based upon the location of device 10 and user-specific data 48, processor 40 provides advertisement data from one or more of advertisement services 60, 62, 64 to the user.

For example, referring to FIGS. 7, 9, and 10, a user may be walking down a street having a variety of restaurants while carrying device 10. Device 10 is configured to determine its location using GPS application 44 and determine that advertisement services 60, 62, 64 have advertisements or advertisement data associated with the nearby restaurants. Processor 40 is configured to access user-specific data 48 and filter the advertisement data accordingly. For example, processor 40 may access messaging data 54 and parse the text of recent emails (or text messages, etc.) to determine whether there are key words, etc., that indicate a common theme, such as “sports,” “pizza,” etc., such that these key words may be used to select, for example, the restaurants that the user would most likely prefer (e.g., a sports bar, a pizza restaurant, etc.). Similarly, processor 40 may access personal preference data 56, which may include information related to a user's favorite restaurants, etc. Furthermore, processor 40 may access contacts data 52 to, for example, identify any commercial establishments that are in the user's contacts application, are nearby the user's current location, and are offering advertisement data. Further yet, processor 40 may retrieve phone numbers of recently placed and/or received calls and, in conjunction with contacts data 52, determine an address based on the phone number(s). Processor 40 may then determine whether the address(es) represent(s) any commercial establishments that offer advertisement data and are nearby the user. According to various exemplary embodiments, processor 40 may access one or more types of user-specific data 48 to provide a more or less rigorous filtering mechanism for providing advertisement data to device 10.

Referring to FIG. 9 the advertisement data may be provided as an icon 90 that is selectable by the user of device 10 such that upon selection by a user, a larger image is provided, such as image 96 shown in FIG. 10. As shown in FIGS. 9 and 10, “Add” and “Remove” buttons 92, 94 may be provided (e.g., as “soft buttons” on a display or touch screen) that permit a user to indicate whether to permit future advertisement data from the associated establishment, etc. to be provided on device 10 (e.g., by selecting “Remove,” processor 40 may filter out advertisement data from advertisement services 60, 62, 64 such that the user does not receive advertisement data from the establishment associated with the current advertisement in the future). The use of buttons 92, 94 may further be used by processor 40 to, for example, modify personal preference data 56.

Referring to FIG. 8, a flow chart illustrating another exemplary method of providing advertisement data to a device such as device 10 is shown. As shown in FIG. 8, processor 40 accesses appointment data stored as a part of, for example, calendar data 50 (e.g., a date, time, and/or location for a future appointment of a user of device 10) (step 80). According to an exemplary embodiment, processor 40 accesses calendar data 50 without being prompted by a user by identifying the date and time of the appointment (e.g., by identifying any appointments in the next 2 hours, 1 day, next week, etc.) and accessing the data at a predetermined period of time prior to the appointment. According to another exemplary embodiment, a user may select a specific appointment the user wishes processor 40 to act upon (e.g., for planning purposes, etc.).

Processor 40 then identifies the location data (e.g., an address, a city, etc.) associated with the appointment (step 82). According to an exemplary embodiment, processor 40 may determine the location data for the appointment by parsing the text of a calendar entry (e.g., “Meeting at Joe's Restaurant”) and referencing contacts data 52 to determine whether there is an address associated with “Joe's Restaurant” in contacts data 52. Alternatively, an address may be provided directly in the appointment data, which processor 40 may then use as the location data for the appointment. Further, a user may be prompted for or manually input the location data for an appointment if processor 40 cannot otherwise determine the location data for the appointment.

Processor 40 then determines the location of device 10 (step 84) using, for example, GPS application 44 or another suitable location-determining application. Alternatively, a user may be prompted for or otherwise manually input an alternative location (e.g., in the case of when the user knows he or she will be at another location in the near future, etc.).

Based upon the location data from the appointment and the location of device 10 (or other alternative location provided by the user), processor 40 may then provide advertisement data (step 86), for example, along the driving route between the location of the appointment and the current location of device 10 within a predetermined distance of the location of the appointment and/or the current location of device 10, and so on.

For example, referring to FIGS. 8 and 11, a user may have an appointment (e.g., a sporting event the user wishes to watch such as a baseball game) at a specific time/date at location 102. At a predetermined period of time prior to the appointment (e.g., 4 hours), processor 40 accesses the location data of the appointment (e.g., the location of a baseball stadium, etc.). Processor 40 also determines the current location 100 of device 10. Based upon the current location 100 of device 10 and location 102 of the appointment, processor 40 may then provide advertisement data to device 10 in advance of the appointment based on the current location 100, appointment location 102, time of day, or a combination of these or other factors. Furthermore, processor 40 may provide the advertisement data based upon, for example, a driving route 104 between locations 100, 102. As shown in FIG. 11, one or more icons 106, 108, 110 may be displayed that represent advertisements or advertisement data for various establishments (e.g., restaurants, parking ramps, etc.). Upon selecting one of icons 106, 108, 110, the user may be provided with a larger image (such as image 96 shown in FIG. 10) that includes additional advertisement data.

According to an alternative exemplary embodiment, processor 40 may further take into account user-specific data 48 in conjunction with locations 100, 102 in providing the advertisement data to device 10. For example, processor 40 may filter the types of restaurants on driving route 104 for which advertisement data is provided to device 10. This provides an additional filtering mechanism and increases the relevancy of the advertisement data delivered to the user of device 10. According to various other exemplary embodiments, a wide variety of other user-specific data 48 may be taken into account in providing advertisement data to device 10 in accordance with the embodiments shown in FIGS. 8 and 11.

While the detailed drawings, specific examples and particular formulations given describe exemplary embodiments, they serve the purpose of illustration only. The hardware and software configurations shown and described may differ depending on the chosen performance characteristics and physical characteristics of the computing devices. The systems shown and described are not limited to the precise details and conditions disclosed. Furthermore, other substitutions, modifications, changes, and omissions may be made in the design, operating conditions, and arrangement of the exemplary embodiments without departing from the scope of the invention as expressed in the appended claims. 

What is claimed is:
 1. A mobile computing device comprising: a display; a location-determining circuit configured to determine a current location of the mobile computing device; and a processor coupled to the display and the location-determining circuit, the processor configured to: retrieve user-specific data associated with at least one from the group consisting of an electronic mail application, a messaging application, an electronic calendar application, a social media application, a website, and an electronic contacts application; identify a geographic location from the retrieved user-specific data; filter advertisements based at least in part on personal preference data of the user separate from the user-specific data; and present, on the display, one or more filtered advertisements based, at least in part, on the current location of the mobile computing device and the geographic location identified from the user-specific data.
 2. The mobile computing device of claim 1, wherein the user-specific data is social media data retrieved from a social networking website.
 3. The mobile computing device of claim 2, wherein the social networking website is associated with a user's social networking account.
 4. The mobile computing device of claim 1, wherein the processor is further configured to: receive a number of advertisements from one or more advertisement services.
 5. The mobile computing device of claim 1, wherein the personal preference data indicates a number of filtered advertisements to be presented on the display within a time period.
 6. The mobile computing device of claim 1, wherein the personal preference data indicates a type of advertisement to be presented on the display.
 7. The mobile computing device of claim 1, wherein at least one of the presented advertisements comprises an electronic coupon.
 8. The mobile computing device of claim 1, wherein at least one of the presented advertisements comprises an audible message.
 9. The mobile computing device of claim 1, wherein at least one of the presented advertisements comprises a map indicating a location of an associated establishment.
 10. The mobile computing device of claim 1, wherein the user-specific data is at least one of content of an email message, content of a text message, content of an electronic calendar appointment, data from a social media account or website, or data from an electronic contacts application.
 11. A method of operating a mobile computing device, the method comprising: determining a current location of the mobile computing device; retrieving user-specific data associated with at least one of an electronic mail application, a messaging application, an electronic calendar application, a social media application, a website, or an electronic contacts application; identifying a geographic location from the retrieved user-specific data; filtering advertisements based, at least in part, on personal preference data of the user separate from the user-specific data; and presenting, on a display of the mobile computing device, one or more filtered advertisements based, at least in part, on the current location of the mobile computing device and the geographic location identified from the user-specific data.
 12. The method of claim 11, wherein the user-specific data is social media data retrieved from a social networking website.
 13. The method of claim 12, wherein the social networking website is associated with a user's social networking account.
 14. The method of claim 11, further comprising: receiving a number of advertisements from one or more advertisement services.
 15. The method of claim 11, wherein the personal preference data indicates a number of filtered advertisements to be presented on the display within a time period.
 16. The method of claim 11, wherein the personal preference-data indicates a type of advertisement to be presented on the display.
 17. The method of claim 11, wherein at least one of the presented advertisements comprises an electronic coupon.
 18. The method of claim 11, wherein at least one of the presented advertisements comprises an audible message.
 19. The method of claim 11, wherein at least one of the presented advertisements comprises a map indicating a location of an associated establishment.
 20. The method of claim 11, wherein the user-specific data is at least one of content of an email message, content of a text message, content of an electronic calendar appointment, data from a social media account or website, or data from an electronic contacts application.
 21. The method of claim 11, further comprising: determining a time associated with the user-specific data; and identifying the geographic location from the user-specific data based, at least in part, on the determined time.
 22. The method of claim 21, wherein the geographic location is identified at the determined time.
 23. A mobile computing device comprising: means for determining a current location of the mobile computing device; means for retrieving user-specific data associated with at least one of an electronic mail application, a messaging application, an electronic calendar application, a social media application, a website, or an electronic contacts application; means for identifying a geographic location from the retrieved user-specific data; means for filtering advertisements based at least in part on personal preference data of the user separate from the user-specific data; and means for presenting, on a display of the mobile computing device, one or more filtered advertisements based, at least in part, on the current location of the mobile computing device and the geographic location identified from the user-specific data.
 24. The mobile computing device of claim 23, wherein the user-specific data is social media data retrieved from a social networking website.
 25. The mobile computing device of claim 24, wherein the social networking website is associated with a user's social networking account.
 26. The mobile computing device of claim 23, further comprising: means for receiving a number of advertisements from one or more advertisement services.
 27. The mobile computing device of claim 23, wherein the personal preference data indicates a number of filtered advertisements to be presented on the display within a time period.
 28. The mobile computing device of claim 23, wherein the personal preference data indicates a type of advertisement to be presented on the display.
 29. The mobile computing device of claim 23, wherein at least one of the presented advertisements comprises a map indicating a location of an associated establishment.
 30. The mobile computing device of claim 23, wherein the user-specific data is at least one of content of an email message, content of a text message, content of an electronic calendar appointment, data from a social media account or website, or data from an electronic contacts application. 